/**
 *
 */
package com.peter.config;

import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
import org.springframework.web.servlet.config.annotation.ViewControllerRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;

/**
 * @author peter MVC的映射（路由）配置。
 */
@Configuration
public class MvcConfig implements WebMvcConfigurer {
    @Override
    public void addViewControllers(ViewControllerRegistry registry) {
        WebMvcConfigurer.super.addViewControllers(registry);
        registry.addViewController("/hello").setViewName("hello");
        // 根路径指引到“templates/home.html”页面，而不是默认的“static/index.html”。
        registry.addViewController("/").setViewName("home");
        registry.addViewController("/home").setViewName("home");
        // 路径“/login”直接定位到“/templates/login.html”页面。
        registry.addViewController("/login").setViewName("login");
        // 定义重定向："/list"指引到“view/idea/list”。
        registry.addRedirectViewController("/list", "/view/idea/list");
    }

    /**
     * 添加外部资源的路径。
     */
    @Override
    public void addResourceHandlers(ResourceHandlerRegistry registry) {
        // WebMvcConfigurer.super.addResourceHandlers(registry);
        registry.addResourceHandler("/resources/**")
            .addResourceLocations("file:/mnt/data/images/");
    }
}
